package com.cetc.ga.controller;

import com.cetc.ga.domain.entity.UserEntity;
import org.springframework.web.bind.annotation.*;

/**
 * controller 负责页面访问控制
 */
/**
 *  描述： @RestController等同于 @Controller + @ResponseBody
 */
//@Controller
@RestController
@RequestMapping("/user")
public class UserController {
	
    @RequestMapping(value = "/person", method = RequestMethod.GET)
    public String index() {
        return "Hello Spring Boot 2.0!";
    }

    /**
     * 前端Ajax传递Json数据，后端处理两种方式
     * https://www.cnblogs.com/move22/p/7376315.html
     */
    //1 前端传递过来的数据刚好和我们的bean实体对象属性一致，则可以使用对象的形式接受。
    //对象形式接受前端数据
    @RequestMapping(value= "/testJsonOne",method = RequestMethod.POST)
    @ResponseBody
    public String testJson(@RequestBody UserEntity userEntity) {
        System.out.println(userEntity.toString());
        return "success";
    }

    //2 有可能前端传递过来的数据很多很复杂，则我们可以在后端使用字符串的形式接受，具体的处理，我们在后端自己再处理。
    //以字符串的形式接受前端数据
    @RequestMapping(value= "/testJson",method = RequestMethod.POST)
    @ResponseBody
    public String testJson(@RequestBody String jsonStr) {
        System.out.println(jsonStr);
        //这里可以使用JsonMapper来处理jsonStr，比如转成需要的bean对象
        return "success";
    }
}